home *** CD-ROM | disk | FTP | other *** search
/ Gigarom 1 / Gigarom Macintosh Archives (Quantum Leap)(CDRM1080320)(1993).iso / FILES / DEV / A-B / 606+gest.cpt / GestaltEqu.p < prev    next >
Text File  |  1990-10-17  |  9KB  |  245 lines

  1. {    This file has been processed by The THINK Pascal Source Converter, v1.1.    }
  2. {    Converted  6.0.6  GestaltEqu}
  3. {}
  4. {    Copyright © Symantec Corporation 1990}
  5. {    Copyright Apple Computer, Inc. 1985-1990}
  6. {    All rights reserved.}
  7. {}
  8. {    converted from the 6.0.6 beta 19 interfaces 10/16/90  - MYG}
  9.  
  10.  
  11. unit GestaltEqu;
  12.  
  13.  
  14. interface
  15.  
  16.     const
  17. {***********************}
  18. { *    Gestalt error codes}
  19. { ***********************}
  20.         gestaltUnknownErr = -5550;            { value returned if Gestalt doesn't know the answer }
  21.         gestaltUndefSelectorErr = -5551;            { undefined selector was passed to Gestalt }
  22.         gestaltDupSelectorErr = -5552;            { tried to add an entry that already existed }
  23.         gestaltLocationErr = -5553;            { gestalt function ptr wasn't in sysheap }
  24.  
  25. {*************************}
  26. { *    Environment Selectors}
  27. { *************************}
  28.         gestaltVersion = 'vers';            { gestalt version }
  29.  
  30.         gestaltAddressingModeAttr = 'addr';            { addressing mode attributes }
  31.         gestalt32BitAddressing = 0;                { using 32-bit addressing mode }
  32.         gestalt32BitSysZone = 1;                { 32-bit compatible system zone }
  33.         gestalt32BitCapable = 2;                { Machine is 32-bit capable }
  34.  
  35.         gestaltAliasMgrAttr = 'alis';            { Alias Mgr Attributes }
  36.         gestaltAliasMgrPresent = 0;                { True if the Alias Mgr is present }
  37.  
  38.         gestaltAppleTalkVersion = 'atlk';            { appletalk version }
  39.  
  40.         gestaltAUXVersion = 'a/ux';            { a/ux version, if present }
  41.  
  42.         gestaltConnMgrAttr = 'conn';             { connection mgr attributes    }
  43.         gestaltConnMgrPresent = 0;
  44.         gestaltConnMgrErrorString = 1;
  45.         gestaltConnMgrCMSearchFix = 3;                 { do we have fix to CMAddSearch?    }
  46.  
  47.         gestaltCRMAttr = 'crm ';            { comm resource mgr attributes        }
  48.         gestaltCRMPresent = 0;
  49.  
  50.         gestaltCTBManagers = 'ctbm';             { returns bitmask of which managers are present    }
  51.  
  52.         gestaltCTBUtilsAttr = 'ctbu';             { comm toolbox utilities attributes    }
  53.         gestaltCTBUtilsPresent = 0;
  54.  
  55.         gestaltCTBVersion = 'ctbv';            { CommToolbox version }
  56.  
  57.         gestaltDBAccessMgrAttr = 'dbac';            { Database Access Mgr attributes }
  58.         gestaltDBAccessMgrPresent = 0;                { True if the Database Access Mgr present }
  59.  
  60.         gestaltEditionMgrAttr = 'edtn';            { Edition Mgr attributes }
  61.         gestaltEditionMgrPresent = 0;                { True if Edition Mgr present }
  62.  
  63.         gestaltAppleEventsAttr = 'evnt';            { Apple Events attributes }
  64.         gestaltAppleEventsPresent = 0;                { True if Apple Events present }
  65.  
  66.         gestaltFolderMgrAttr = 'fold';            { Folder Mgr attributes }
  67.         gestaltFolderMgrPresent = 0;                { True if Folder Mgr present }
  68.  
  69.         gestaltFontMgrAttr = 'font';            { Font Mgr attributes }
  70.         gestaltOutlineFonts = 0;                { True if the Font Mgr supported }
  71.  
  72.         gestaltFPUType = 'fpu ';            { Fpu type }
  73.         gestaltNoFPU = 0;                { no FPU }
  74.         gestalt68881 = 1;                { 68881 FPU }
  75.         gestalt68882 = 2;                { 68882 FPU }
  76.         gestalt68040FPU = 3;                { 68040 built-in FPU }
  77.  
  78.         gestaltFXfrMgrAttr = 'fxfr';             { file transfer manager attributes    }
  79.         gestaltFXfrMgrPresent = 0;
  80.         gestaltFXfrMgrErrorString = 1;
  81.  
  82.         gestaltHardwareAttr = 'hdwr';            { hardware attributes }
  83.         gestaltHasVIA1 = 0;                { VIA1 exists }
  84.         gestaltHasVIA2 = 1;                { VIA2 exists }
  85.         gestaltHasASC = 3;                { Apple Sound Chip exists }
  86.         gestaltHasSCC = 4;                { SCC exists }
  87.         gestaltHasSCSI = 7;                { SCSI exists }
  88.  
  89.         gestaltHelpMgrAttr = 'help';            { Help Mgr Attributes }
  90.         gestaltHelpMgrPresent = 0;                { true if help mgr is present }
  91.  
  92.         gestaltKeyboardType = 'kbd ';            { keyboard type }
  93.         gestaltMacKbd = 1;
  94.         gestaltMacAndPad = 2;
  95.         gestaltMacPlusKbd = 3;
  96.         gestaltExtADBKbd = 4;
  97.         gestaltStdADBKbd = 5;
  98.         gestaltPrtblADBKbd = 6;
  99.         gestaltPrtblISOKbd = 7;
  100.         gestaltStdISOADBKbd = 8;
  101.         gestaltExtISOADBKbd = 9;
  102.         gestaltElmerKbd = 10;
  103.         gestaltElmerISOKbd = 11;
  104.  
  105.         gestaltLowMemorySize = 'lmem';            { size of low memory area }
  106.  
  107.         gestaltLogicalRAMSize = 'lram';            { logical ram size }
  108.  
  109.         gestaltMiscAttr = 'misc';            { miscellaneous information }
  110.         gestaltScrollingThrottle = 0;                 { true if scrolling throttle on }
  111.  
  112.         gestaltMMUType = 'mmu ';            { mmu type }
  113.         gestaltNoMMU = 0;                { no MMU }
  114.         gestaltAMU = 1;                { address management unit }
  115.         gestalt68851 = 2;                { 68851 PMMU }
  116.         gestalt68030MMU = 3;                { 68030 built-in MMU }
  117.         gestalt68040MMU = 4;                { 68040 built-in MMU }
  118.  
  119.         gestaltStdNBPAttr = 'nlup';             { standard nbp attributes    }
  120.         gestaltStdNBPPresent = 0;
  121.  
  122.         gestaltNotificationMgrAttr = 'nmgr';           { notification manager attributes }
  123.         gestaltNotificationPresent = 0;                   { notification manager exists }
  124.  
  125.         gestaltOSAttr = 'os  ';            { o/s attributes }
  126.         gestaltSysZoneGrowable = 0;                { system heap is growable }
  127.         gestaltLaunchCanReturn = 1;                { can return from launch }
  128.         gestaltLaunchFullFileSpec = 2;                { can launch from full file spec }
  129.         gestaltLaunchControl = 3;                { launch control support available }
  130.         gestaltTempMemSupport = 4;                { temp memory support }
  131.         gestaltRealTempMemory = 5;                { temp memory handles are real }
  132.         gestaltTempMemTracked = 6;                { temporary memory handles are tracked }
  133.         gestaltIPCSupport = 7;                { IPC support is present }
  134.         gestaltSysDebuggerSupport = 8;                { system debugger support is present }
  135.  
  136.         gestaltLogicalPageSize = 'pgsz';            { logical page size }
  137.  
  138.         gestaltPowerMgrAttr = 'powr';            { power manager attributes }
  139.         gestaltPMgrExists = 0;
  140.         gestaltPMgrCPUIdle = 1;
  141.         gestaltPMgrSCC = 2;
  142.         gestaltPMgrSound = 3;
  143.  
  144.         gestaltPPCToolboxAttr = 'ppc ';            { PPC toolbox attributes }
  145.  
  146.     {}
  147. {          PPC will return the combination of following bit fields.}
  148. {          e.g. gestaltPPCSupportsRealTime +gestaltPPCSupportsIncomming + gestaltPPCSupportsOutGoing}
  149. {          indicates PPC is cuurently is only supports real time delivery}
  150. {        and both icoming and outgoing network sessions are allowed.}
  151. {        By default local real time delivery is supported as long as PPCInit has been called.}
  152. {}
  153.         gestaltPPCToolboxPresent = $0000; { PPC Toolbox is present  Requires PPCInit to be called }
  154.         gestaltPPCSupportsRealTime = $1000; { PPC Supports real-time delivery }
  155.         gestaltPPCSupportsStoreAndForward = $2000; { PPC store and forward delivery }
  156.         gestaltPPCSupportsDontCare = $4000; {PPC Supports  Specification of Don't care }
  157.         gestaltPPCSupportsIncomming = $0001; { PPC will deny incomming network requests }
  158.         gestaltPPCSupportsOutGoing = $0002; {PPC will deny outgoing network requests}
  159.  
  160.         gestaltProcessorType = 'proc';            { processor type }
  161.         gestalt68000 = 1;
  162.         gestalt68010 = 2;
  163.         gestalt68020 = 3;
  164.         gestalt68030 = 4;
  165.         gestalt68040 = 5;
  166.  
  167.         gestaltParityAttr = 'prty';            { parity attributes }
  168.         gestaltHasParityCapability = 0;                { has ability to check parity }
  169.         gestaltParityEnabled = 1;                { parity checking enabled }
  170.  
  171.         gestaltQuickdrawVersion = 'qd  ';            { quickdraw version }
  172.         gestaltOriginalQD = $000;             { original 1-bit QD }
  173.         gestalt8BitQD = $100;             { 8-bit color QD }
  174.         gestalt32BitQD = $200;             { 32-bit color QD }
  175.  
  176.         gestaltPhysicalRAMSize = 'ram ';            { physical RAM size }
  177.  
  178.         gestaltPopupAttr = 'pop!';             { popup cdef attributes    }
  179.         gestaltPopupPresent = 0;
  180.  
  181.         gestaltResourceMgrAttr = 'rsrc';            { Resource Mgr attributes }
  182.         gestaltPartialRsrcs = 0;                { True if partial resources exist }
  183.  
  184.         gestaltScriptMgrVersion = 'scri';            { Script Manager version number }
  185.         gestaltScriptCount = 'scr#';            { number of active script systems }
  186.  
  187.         gestaltSoundAttr = 'snd ';            { sound attributes }
  188.         gestaltStereoCapability = 0;                { sound hardware has stereo capability }
  189.         gestaltStereoMixing = 1;                { stereo mixing on external speaker }
  190.         gestaltSoundIOMgrPresent = 3;                { new sound I/O manager is present }
  191.         gestaltSoundInputPresent = 4;                { sound input hardware is present }
  192.  
  193.         gestaltStandardFileAttr = 'stdf';            { Standard File attributes }
  194.         gestaltStandardFile58 = 0;                 { True if selectors 5-8 (StandardPutFile-CustomGetFile) are supported }
  195.  
  196.         gestaltTextEditVersion = 'te  ';            { TextEdit version number }
  197.         gestaltTE1 = 1;                { TextEdit in MacIIci ROM }
  198.         gestaltTE2 = 2;                { TextEdit with 6.0.4 Script Systems on MacIIci (Script bug fixes for MacIIci) }
  199.         gestaltTE3 = 3;                { TextEdit with 6.0.4 Script Systems all but MacIIci (for MacII, MacSE, Mac+) }
  200.         gestaltTE4 = 4;                { TextEdit in 7.0 }
  201.  
  202.         gestaltTermMgrAttr = 'term';            { terminal mgr attributes    }
  203.         gestaltTermMgrPresent = 0;
  204.         gestaltTermMgrErrorString = 1;
  205.  
  206.         gestaltTimeMgrVersion = 'tmgr';            { time mgr version }
  207.         gestaltStandardTimeMgr = 1;                { standard time mgr is present }
  208.         gestaltRevisedTimeMgr = 2;                { revised time mgr is present }
  209.         gestaltExtendedTimeMgr = 3;                { extended time mgr is present }
  210.  
  211.         gestaltVMAttr = 'vm  ';            { virtual memory attributes }
  212.         gestaltVMPresent = 0;                { true if virtual memory present }
  213.  
  214. {************************}
  215. { *    Info-only selectors}
  216. { ***********************}
  217.         gestaltMachineType = 'mach';            { machine type }
  218.         gestaltClassic = 1;
  219.         gestaltMacXL = 2;
  220.         gestaltMac512KE = 3;
  221.         gestaltMacPlus = 4;
  222.         gestaltMacSE = 5;
  223.         gestaltMacII = 6;
  224.         gestaltMacIIx = 7;
  225.         gestaltMacIIcx = 8;
  226.         gestaltMacSE030 = 9;
  227.         gestaltPortable = 10;
  228.         gestaltMacIIci = 11;
  229.         gestaltMacIIfx = 13;
  230.  
  231.         gestaltMachineIcon = 'micn';            { machine icon }
  232.  
  233.         gestaltROMSize = 'rom ';            { rom size }
  234.         gestaltROMVersion = 'romv';            { rom version }
  235.         gestaltSystemVersion = 'sysv';            { system version}
  236.  
  237.     function Gestalt (selector: OSType; var response: LONGINT): OSErr;
  238.     function NewGestalt (selector: OSType; gestaltFunction: ProcPtr): OSErr;
  239.     function ReplaceGestalt (selector: OSType; gestaltFunction: ProcPtr; var oldGestaltFunction: ProcPtr): OSErr;
  240.  
  241.     { UsingGestaltEqu }
  242.  
  243.  
  244. implementation
  245. end.